#include "Palmares.h"

int* Palmares_init(int eNombreJoueur){
	//Initialise le tableau du palmares
	int* classement = (int*) malloc(eNombreJoueur*sizeof(int));	
	int eNombreJoueurCompteur;
	
	for(eNombreJoueurCompteur=0;eNombreJoueurCompteur<eNombreJoueur;eNombreJoueurCompteur++){
		classement[eNombreJoueurCompteur] = 1;
	}

	return classement;
}

void Palmares_Incremente (t_liste** pRattaupe, int eNombreJoueur, int* classement){
	int eNombreJoueurCompteur;
	
	for(eNombreJoueurCompteur=0;eNombreJoueurCompteur<eNombreJoueur;eNombreJoueurCompteur++){
		if(!liste_vide(pRattaupe[eNombreJoueurCompteur])){
			classement[eNombreJoueurCompteur]++;
		}
	}
}

void Palmares_Afficher (int eNombreJoueur, int* classement, SDL_Surface* ecran){
	int ePalmares[4][2];
	int eNombreJoueurCompteur;
	int eIncremente=0;
	char Classement[100] = "";
	SDL_Surface *SDL_Texte = NULL, *SDL_Clean = NULL;
	int position=HAUTEUR_FENETRE+5;

	for(eIncremente=0;eIncremente<eNombreJoueur;eIncremente++){
		ePalmares[eIncremente][1]=0;
		for(eNombreJoueurCompteur=0;eNombreJoueurCompteur<eNombreJoueur;eNombreJoueurCompteur++){
				if(classement[eNombreJoueurCompteur]>ePalmares[eIncremente][1]){
					ePalmares[eIncremente][1]=classement[eNombreJoueurCompteur];
					ePalmares[eIncremente][0]=eNombreJoueurCompteur;
				}
		}
		classement[ePalmares[eIncremente][0]]=0;
	}

	SDL_Rect_Blanc(ecran,SDL_Clean, ESPACE_MENU, LARGEUR_FENETRE, 0, HAUTEUR_FENETRE);//Vidage du menu
	SDL_Flip(ecran);

	sprintf(Classement, "Classement");
	SDL_Ecrire(ecran, SDL_Texte, 100, Classement, 5, position);
	for(eIncremente=0;eIncremente<eNombreJoueur;eIncremente++){
		position+=15;
		sprintf(Classement,"Equipe %i : avec %i tours",ePalmares[eIncremente][0]+1,ePalmares[eIncremente][1]);
		SDL_Ecrire(ecran, SDL_Texte, 100, Classement, 5, position);
	}
	SDL_Flip(ecran);
}



